import { Routes } from '@angular/router';
import { ButtonBasicComponent } from './button/button-basic/button-basic.component';
import { ButtonIconComponent } from './button/button-icon/button-icon.component';
import { ButtonSizeComponent } from './button/button-size/button-size.component';
import { ButtonDisableComponent } from './button/button-disable/button-disable.component';
import { ButtonLoadingComponent } from './button/button-loading/button-loading.component';
import { ButtonToolbarComponent } from './button/button-toolbar/button-toolbar.component';
import { ButtonGroupDemoComponent } from './button/button-group-demo/button-group-demo.component';
import { ButtonGhostComponent } from './button/button-ghost/button-ghost.component';
import { ButtonBlockComponent } from './button/button-block/button-block.component';
import { ButtonDangerComponent } from './button/button-danger/button-danger.component';
import { IconBasicComponent } from './icon/icon-basic/icon-basic.component';
import { IconColoredComponent } from './icon/icon-colored/icon-colored.component';
import { IconCustomComponent } from './icon/icon-custom/icon-custom.component';
import { IconFontComponent } from './icon/icon-font/icon-font.component';
import { IconNamespaceComponent } from './icon/icon-namespace/icon-namespace.component';
import { TableBasicComponent } from './table/table-basic/table-basic.component';
import { TableRowSelectionComponent } from './table/table-row-selection/table-row-selection.component';
import { TableSelectionCustomComponent } from './table/table-selection-custom/table-selection-custom.component';
import { InputBasicComponent } from './input/input-basic/input-basic.component';
import { InputSizeComponent } from './input/input-size/input-size.component';
import { InputAddonComponent } from './input/input-addon/input-addon.component';
import { InputGroupDemoComponent } from './input/input-group-demo/input-group-demo.component';
import { InputRadioComponent } from './input/input-type/input-radio.component';
import { InputRadioListComponent } from './input/input-type/input-radio-list.component';
import { InputSearchComponent } from './input/search.component';
import { InputTextareaComponent } from './input/input-textarea.component';
import { InputTextareaAutoComponent } from './input/input-textarea-auto.component';
import { InputTooltipComponent } from './input/input-tooltip.component';
import { InputPresuffixComponent } from './input/input-presuffix.component';
import { InputPwdComponent } from './input/input-pwd.component';
import { InputClearComponent } from './input/input-clear.component';
import { InputBorderlessComponent } from './input/input-borderless.component';
import { InputTextareaLengthComponent } from './input/input-textarea-length.component';
import { InputStatusComponent } from './input/input-status.component';
import { InputNumberBasicComponent } from './input-number/input-number-basic.component';
import { InputNumberBorderlessComponent } from './input-number/input-number-borderless.component';
import { InputNumberSizeComponent } from './input-number/input-number-size.component';
import { InputNumberDisableComponent } from './input-number/input-number-disable.component';
import { InputNumberDigitComponent } from './input-number/input-number-digit.component';
import { InputNumberFormatterComponent } from './input-number/input-number-formatter.component';
import { InputNumberPrecisionComponent } from './input-number/input-number-precision.component';
import { InputNumberStatusComponent } from './input-number/input-number-status.component';
import { InputNumberAddonComponent } from './input-number/input-number-addon.component';
import { InputNumberPrefixComponent } from './input-number/input-number-prefix.component';
import { InputNumberGroupComponent } from './input-number/input-number-group.component';
import { SwitchBasicComponent } from './switch/switch-basic.component';
import { SwitchDisableComponent } from './switch/switch-disable.component';
import { SwitchTextComponent } from './switch/switch-text.component';
import { SwitchLabelComponent } from './switch/switch-label.component';
import { SwitchSizeComponent } from './switch/switch-size.component';
import { SwitchLoadingComponent } from './switch/switch-loading.component';
import { SwitchRemoteComponent } from './switch/switch-remote.component';
import { LayoutBasic1Component } from './layout/layout-basic1.component';
import { LayoutBasic2Component } from './layout/layout-basic2.component';
import { LayoutBasic3Component } from './layout/layout-basic3.component';
import { LayoutBasic4Component } from './layout/layout-basic4.component';
import { LayoutTopComponent } from './layout/layout-top.component';
import { LayoutTopSiderComponent } from './layout/layout-top-sider.component';
import { MenuHorizontalComponent } from './menu/menu-horizontal.component';
import { MenuHorizontalDivComponent } from './menu/menu-horizontal_div.component';
import { MenuVerticalComponent } from './menu/menu-vertical.component';
import { MenuInlineComponent } from './menu/menu-inline.component';
import { FlexBasicComponent } from './flex/flex-basic.component';
import { FlexAlignComponent } from './flex/flex-align.component';
import { FlexGapComponent } from './flex/flex-gap.component';
import { FlexWrapComponent } from './flex/flex-wrap.component';
import { FlexCombineComponent } from './flex/flex-combine.component';
import { ProgressLineComponent } from './progress/progress-line.component';
import { ProgressCircleComponent } from './progress/progress-circle.component';
import { ProgressFormatComponent } from './progress/progress-format.component';
import { ProgressSegmentComponent } from './progress/progress-segment.component';
import { ProgressGradientComponent } from './progress/progress-gradient.component';
import { ProgressBasicComponent } from './progress/progress-basic.component';
import { ProgressStepComponent } from './progress/progress-step.component';
import { ImageBasicComponent } from './image/image-basic.component';
import { ImageFallbackComponent } from './image/image-fallback.component';
import { ImagePlaceholderComponent } from './image/image-placeholder.component';
import { ImageMultipleComponent } from './image/image-multiple.component';
import { ImageServiceComponent } from './image/image-service.component';
import { DivideHorizontalComponent } from './divide/divide-horizontal.component';
import { DivideAlignComponent } from './divide/divide-align.component';
import { DivideVerticalComponent } from './divide/divide-vertical.component';
import { ButtonCircleComponent } from './button/button-circle.component';
import { SpaceBasicComponent } from './space/space-basic.component';
import { SpaceVerticalComponent } from './space/space-vertical.component';
import { SpaceSizeComponent } from './space/space-size.component';
import { SpaceAlignComponent } from './space/space-align.component';
import { SpaceCustomComponent } from './space/space-custom.component';
import { SpaceSplitComponent } from './space/space-split.component';
import { SpaceWrapComponent } from './space/space-wrap.component';
import { BreadcrumbBasicComponent } from './breadcrumb/breadcrumb-basic.component';
import { BreadcrumbIconComponent } from './breadcrumb/breadcrumb-icon.component';
import { BreadcrumbRouterComponent } from './breadcrumb/breadcrumb-router.component';
import { BreadcrumbSplitComponent } from './breadcrumb/breadcrumb-split.component';
import { BreadcrumbDropdownComponent } from './breadcrumb/breadcrumb-dropdown.component';
import { BreadcrumbDropdown0Component } from './breadcrumb/breadcrumb-dropdown0.component';
import { DropdownBasicComponent } from './dropdown/dropdown-basic.component';
import { DropdownPlaceComponent } from './dropdown/dropdown-place.component';
import { DropdownSplitComponent } from './dropdown/dropdown-split.component';
import { DropdownDisableComponent } from './dropdown/dropdown-disable.component';
import { DropdownTriggleComponent } from './dropdown/dropdown-triggle.component';
import { PaginationBasicComponent } from './pagination/pagination-basic.component';
import { PaginationMoreComponent } from './pagination/pagination-more.component';
import { PaginationChangerComponent } from './pagination/pagination-changer.component';
import { PaginationDisableComponent } from './pagination/pagination-disable.component';
import { PaginationJumpComponent } from './pagination/pagination-jump.component';
import { PaginationMiniComponent } from './pagination/pagination-mini.component';
import { PaginationSimpleComponent } from './pagination/pagination-simple.component';
import { PaginationTotalComponent } from './pagination/pagination-total.component';
import { PaginationTotalAdvComponent } from './pagination/pagination-total-adv.component';
import { PaginationItemRenderComponent } from './pagination/pagination-item-render.component';
import { PaginationSizeOptionsComponent } from './pagination/pagination-size-options.component';
import { PaginationHideOnSingleComponent } from './pagination/pagination-hide-on-single.component';
import { LayoutBasic1FullComponent } from './layout/layout-basic1-full.component';
import { LayoutBasic1FixedFooterComponent } from './layout/layout-basic1-fixed-footer.component';
import { CheckboxBasicComponent } from './checkbox/checkbox-basic.component';
import { CheckboxDisableComponent } from './checkbox/checkbox-disable.component';
import { CheckboxGroupComponent } from './checkbox/checkbox-group.component';
import { CheckboxGroupStringComponent } from './checkbox/checkbox-group-string.component';
import { CheckboxGroupAllComponent } from './checkbox/checkbox-group-all.component';
import { CheckboxGroupAllByModelComponent } from './checkbox/checkbox-group-all-by-model.component';
import { CheckboxGroupWrapComponent } from './checkbox/checkbox-group-wrap.component';

export const routes: Routes = [
  { path: 'button-basic', component: ButtonBasicComponent },
  { path: 'button-icon', component: ButtonIconComponent },
  { path: 'button-size', component: ButtonSizeComponent },
  { path: 'button-disable', component: ButtonDisableComponent },
  { path: 'button-loading', component: ButtonLoadingComponent },
  { path: 'button-toolbar', component: ButtonToolbarComponent },
  { path: 'button-group', component: ButtonGroupDemoComponent },
  { path: 'button-ghost', component: ButtonGhostComponent },
  { path: 'button-block', component: ButtonBlockComponent },
  { path: 'button-danger', component: ButtonDangerComponent },
  { path: 'button-circle', component: ButtonCircleComponent },
  { path: 'icon-basic', component: IconBasicComponent },
  { path: 'icon-colored', component: IconColoredComponent },
  { path: 'icon-custom', component: IconCustomComponent },
  { path: 'icon-font', component: IconFontComponent },
  { path: 'icon-ns', component: IconNamespaceComponent },
  { path: 'table-basic', component: TableBasicComponent },
  { path: 'table-selection', component: TableRowSelectionComponent },
  { path: 'table-selection_custom', component: TableSelectionCustomComponent },
  { path: 'input-basic', component: InputBasicComponent },
  { path: 'input-size', component: InputSizeComponent },
  { path: 'input-addon', component: InputAddonComponent },
  { path: 'input-group', component: InputGroupDemoComponent },
  { path: 'input-radio', component: InputRadioComponent },
  { path: 'input-radios', component: InputRadioListComponent },
  { path: 'input-search', component: InputSearchComponent },
  { path: 'input-textarea', component: InputTextareaComponent },
  { path: 'input-textarea_auto', component: InputTextareaAutoComponent },
  { path: 'input-tooltip', component: InputTooltipComponent },
  { path: 'input-presuffix', component: InputPresuffixComponent },
  { path: 'input-pwd', component: InputPwdComponent },
  { path: 'input-clear', component: InputClearComponent },
  { path: 'input-borderless', component: InputBorderlessComponent },
  { path: 'input-textarea_length', component: InputTextareaLengthComponent },
  { path: 'input-status', component: InputStatusComponent },
  { path: 'number-basic', component: InputNumberBasicComponent },
  { path: 'number-borderless', component: InputNumberBorderlessComponent },
  { path: 'number-size', component: InputNumberSizeComponent },
  { path: 'number-disable', component: InputNumberDisableComponent },
  { path: 'number-digit', component: InputNumberDigitComponent },
  { path: 'number-formatter', component: InputNumberFormatterComponent },
  { path: 'number-precision', component: InputNumberPrecisionComponent },
  { path: 'number-status', component: InputNumberStatusComponent },
  { path: 'number-addon', component: InputNumberAddonComponent },
  { path: 'number-prefix', component: InputNumberPrefixComponent },
  { path: 'number-group', component: InputNumberGroupComponent },
  { path: 'switch-basic', component: SwitchBasicComponent },
  { path: 'switch-disable', component: SwitchDisableComponent },
  { path: 'switch-label', component: SwitchLabelComponent },
  { path: 'switch-text', component: SwitchTextComponent },
  { path: 'switch-size', component: SwitchSizeComponent },
  { path: 'switch-loading', component: SwitchLoadingComponent },
  { path: 'switch-remote', component: SwitchRemoteComponent },
  { path: 'layout/basic1', component: LayoutBasic1Component },
  { path: 'layout-basic2', component: LayoutBasic2Component },
  { path: 'layout-basic3', component: LayoutBasic3Component },
  { path: 'layout-basic4', component: LayoutBasic4Component },
  { path: 'layout-top', component: LayoutTopComponent },
  { path: 'layout-top_sider', component: LayoutTopSiderComponent },
  { path: 'menu-horizontal', component: MenuHorizontalComponent },
  { path: 'menu-horizontal_div', component: MenuHorizontalDivComponent },
  { path: 'menu-vertical', component: MenuVerticalComponent },
  { path: 'menu-inline', component: MenuInlineComponent },
  { path: 'flex-basic', component: FlexBasicComponent },
  { path: 'flex-align', component: FlexAlignComponent },
  { path: 'flex-gap', component: FlexGapComponent },
  { path: 'flex-wrap', component: FlexWrapComponent },
  { path: 'flex-combine', component: FlexCombineComponent },
  { path: 'progress-line', component: ProgressLineComponent },
  { path: 'progress-circle', component: ProgressCircleComponent },
  { path: 'progress-format', component: ProgressFormatComponent },
  { path: 'progress-segment', component: ProgressSegmentComponent },
  { path: 'progress-gradient', component: ProgressGradientComponent },
  { path: 'progress-basic', component: ProgressBasicComponent },
  { path: 'progress-step', component: ProgressStepComponent },
  { path: 'image-basic', component: ImageBasicComponent },
  { path: 'image-fallback', component: ImageFallbackComponent },
  { path: 'image-placeholder', component: ImagePlaceholderComponent },
  { path: 'image-multiple', component: ImageMultipleComponent },
  { path: 'image-service', component: ImageServiceComponent },
  { path: 'divide-horizontal', component: DivideHorizontalComponent },
  { path: 'divide-align', component: DivideAlignComponent },
  { path: 'divide-vertical', component: DivideVerticalComponent },
  { path: 'space-basic', component: SpaceBasicComponent },
  { path: 'space-vertical', component: SpaceVerticalComponent },
  { path: 'space-size', component: SpaceSizeComponent },
  { path: 'space-align', component: SpaceAlignComponent },
  { path: 'space-custom', component: SpaceCustomComponent },
  { path: 'space-split', component: SpaceSplitComponent },
  { path: 'space-wrap', component: SpaceWrapComponent },
  { path: 'breadcrumb/basic', component: BreadcrumbBasicComponent },
  { path: 'breadcrumb/icon', component: BreadcrumbIconComponent },
  { path: 'breadcrumb/router', component: BreadcrumbRouterComponent },
  { path: 'breadcrumb/split', component: BreadcrumbSplitComponent },
  { path: 'breadcrumb/dropdown', component: BreadcrumbDropdownComponent },
  { path: 'breadcrumb/dropdown0', component: BreadcrumbDropdown0Component },
  { path: 'breadcrumb', redirectTo: '/breadcrumb/basic', pathMatch: 'full' },
  { path: 'dropdown/basic', component: DropdownBasicComponent },
  { path: 'dropdown/place', component: DropdownPlaceComponent },
  { path: 'dropdown/split', component: DropdownSplitComponent },
  { path: 'dropdown/disable', component: DropdownDisableComponent },
  { path: 'dropdown/triggle', component: DropdownTriggleComponent },
  { path: 'pagination/basic', component: PaginationBasicComponent },
  { path: 'pagination/more', component: PaginationMoreComponent },
  { path: 'pagination/changer', component: PaginationChangerComponent },
  { path: 'pagination/disable', component: PaginationDisableComponent },
  { path: 'pagination/jump', component: PaginationJumpComponent },
  { path: 'pagination/mini', component: PaginationMiniComponent },
  { path: 'pagination/simple', component: PaginationSimpleComponent },
  { path: 'pagination/total', component: PaginationTotalComponent },
  { path: 'pagination/total-adv', component: PaginationTotalAdvComponent },
  { path: 'pagination/item-render', component: PaginationItemRenderComponent },
  {
    path: 'pagination/size-options',
    component: PaginationSizeOptionsComponent,
  },
  {
    path: 'pagination/hide-on-single',
    component: PaginationHideOnSingleComponent,
  },
  { path: 'layout/basic1-full', component: LayoutBasic1FullComponent },
  {
    path: 'layout/basic1-fixed-footer',
    component: LayoutBasic1FixedFooterComponent,
  },
  { path: 'checkbox/basic', component: CheckboxBasicComponent },
  { path: 'checkbox/disable', component: CheckboxDisableComponent },
  { path: 'checkbox/group', component: CheckboxGroupComponent },
  { path: 'checkbox/group-string', component: CheckboxGroupStringComponent },
  { path: 'checkbox/group-all', component: CheckboxGroupAllComponent },
  { path: 'checkbox/group-all-by-model', component: CheckboxGroupAllByModelComponent },
  { path: 'checkbox/group-wrap', component: CheckboxGroupWrapComponent },
  // last
  {
    path: '',
      redirectTo: '/checkbox/group-wrap',
    pathMatch: 'full',
  },
];
